package com.awaken.content.controller;

// 导入订单DTO类
import com.awaken.content.models.dto.OrderDTO;
// 导入订单请求类
import com.awaken.content.models.request.OrderRequest;
// 导入订单服务接口
import com.awaken.content.service.OrderService;
// 导入Swagger注解，用于API文档生成
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
// 导入Lombok注解
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
// 导入Spring Web相关注解
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
// 导入Spring依赖注入注解
import org.springframework.beans.factory.annotation.Autowired;

// 导入验证注解
import javax.validation.Valid;
// 导入列表类
import java.util.List;

/**
 * 订单控制器 - 提供订单相关的HTTP接口
 * 这个类只负责接收HTTP请求和返回响应，具体的业务逻辑调用服务层
 */
@Slf4j  // Lombok注解：自动生成log变量，用于记录日志
@Tag(name = "订单管理", description = "订单相关接口")  // Swagger注解：API文档分组
@RestController  // Spring注解：标识这是一个REST控制器，返回JSON数据
@RequestMapping("/api/order")  // 设置基础路径：所有接口都以/api/order开头
@RequiredArgsConstructor  // Lombok注解：自动生成构造函数，注入final字段
@Validated  // Spring注解：启用参数验证
public class OrderController {

    // 注入订单服务，使用@Autowired注解
    @Autowired
    private OrderService orderService;

    // ... 下面所有方法内容保持不变 ...
}